﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SportsPlatform.Dto.SportBusiness.CompetitionGroupingInfo
{
    /// <summary>
    /// 判断当前场次是否存在分组信息
    /// </summary>
    public class JudgeGroupinfoByEventsIdDto
    {
        /// <summary>
        /// 是否存在分组信息，true：存在，false：不存在
        /// </summary>
        public bool IsHave { get; set; }

        /// <summary>
        /// 场次Id
        /// </summary>
        public Guid? EventsSessionId { get; set; }
    }

    /// <summary>
    /// 根据场次ID获取分组列表
    /// </summary>
    public class GetGroupInfoListByEventSessionIdDto
    {
        /// <summary>
        /// 分好组相关信息
        /// </summary>
        public List<GroupInfo> GroupCompetetionInfos { get; set; }

        /// <summary>
        /// 未分组人员信息
        /// </summary>
        public List<GroupingInfo> Grouplists { get; set; }
    }

    /// <summary>
    /// 分组信息
    /// </summary>
    public class GroupInfo
    {
        /// <summary>
        /// 分组表Id
        /// </summary>
        public Guid Id { get; set; }
        /// <summary>
        /// 比赛场次ID
        /// </summary>
        public Guid EventsSessionId { get; set; }

        /// <summary>
        /// 比赛场次名称
        /// </summary>
        public string EventsSessionName { get; set; }
        /// <summary>
        /// 组名
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 组员信息列表
        /// </summary>
        public List<GroupingInfo> Grouplists { get; set; }
    }
    /// <summary>
    /// 组员信息
    /// </summary>
    public class GroupingInfo
    {
        /// <summary>
        /// 参赛团队Id
        /// </summary>
        public Guid? CompeteTeamId { get; set; }

        /// <summary>
        /// 参赛团队名称
        /// </summary>
        public string CompeteTeamName { get; set; }

        /// <summary>
        /// 团队成员信息
        /// </summary>
        public List<CompeteTeamInfoDto> CompeteTeamInfos { get; set; }

        /// <summary>
        /// 未分好组团队成员信息,获取已分组时用到
        /// </summary>
        public List<CompeteTeamInfoDto> NoCompeteTeamInfos { get; set; }

        /// <summary>
        /// 参赛用户ID
        /// </summary>
        public Guid? EmployeeId { get; set; }

        /// <summary>
        /// 用户姓名
        /// </summary>
        public string EmployeeName { get; set; }

        /// <summary>
        /// 参赛用户身份证号码
        /// </summary>
        public string EmployeeIdNo { get; set; }

        /// <summary>
        /// 比赛号位
        /// </summary>
        public int NoLocation { get; set; }

        /// <summary>
        /// 传感器
        /// </summary>
        public string Sensor { get; set; }
    }
    /// <summary>
    /// 参赛团队成员信息
    /// </summary>
    public class CompeteTeamInfoDto
    {
        /// <summary>
        /// 参赛用户Id
        /// </summary>
        public Guid EmployeeId { get; set; }
        /// <summary>
        /// 参赛用户姓名
        /// </summary>
        public string EmployeeName { get; set; }

        /// <summary>
        /// 参赛用户身份证号码
        /// </summary>
        public string EmployeeIdNo { get; set; }

        /// <summary>
        /// 传感器
        /// </summary>
        public string Sensor { get; set; }
    }
}
